direct_solve.cpp